home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C64'er
/
C64'er.iso
/
87xx
/
8709a.d64
/
ba.huepfer v1.0
(
.txt
)
next >
Wrap
Commodore BASIC
|
1995-03-30
|
7KB
|
236 lines
10 GOTO300
20 :
30 DEFFNX(XX)=X:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
40 DEFFNY(YY)=Y:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
50 RETURN
60 :
100 REM *******************************
110 REM * *
120 REM * HUEPFER V1.0 *
130 REM * *
140 REM * GESCHRIEBEN VON: *
150 REM * *
160 REM * JOCHEN TOPF *
170 REM * GLUEMERSTR. 34 *
180 REM * 7800 FREIBURG *
190 REM * TEL.:0761-700701 *
200 REM * *
210 REM *******************************
220 :
230 :
297 REM--------------------------------
298 REM VARIABLEN FUER SYS-AUFRUFE
299 REM--------------------------------
300 IFA=0THENA=A+1:LOAD"MC.HUEPFER*",8,1
310 POKE55,0:POKE56,140
320 HN=49152:HF=49155:HC=49161:HP=49182
330 MC=49164:MP=49185
340 HS=49170:HL=49167:DI=49173
350 CL=49158
360 FX=49176:FY=49179
397 REM--------------------------------
398 REM VORBEREITUNG
399 REM--------------------------------
400 M=0:POKE53280,15:BI=0
410 F1=1:F2=6:F3=0:F4=1:F5=6:F6=2
420 SYSFX,"X":SYSFY,"Y"
430 R$=CHR$(13)
497 REM--------------------------------
498 REM MENUE
499 REM--------------------------------
500 POKE53281,6:PRINT"[147] HUEPFER V1.0"
510 PRINT" (1) ...............ENDE"
520 PRINT" (2) .........BILD LADEN"
530 PRINT" (3) .DIRECTORY ANZEIGEN"
540 PRINT" (4) .........NEUES BILD"
545 IFBI=0THEN590
550 PRINT" (5) ........BILD ZEIGEN"
560 PRINT" (6) ...BILD ABSPEICHERN"
570 PRINT" (7) ......WEITERRECHNEN"
580 PRINT" (8) .PARAMETER ANZEIGEN"
585 PRINT" (9) .............FARBEN"
590 PRINT" WAS DARF'S SEIN ?"
600 GETEI$:IFEI$=""THEN600
610 EI=VAL(EI$)
620 IFBI=0ANDEI>4THEN600
630 ONEIGOTO700,2300,900,1000,800,2200,1500,1600,1900
640 GOTO600
697 REM--------------------------------
698 REM ENDE
699 REM--------------------------------
700 PRINT"[147] WIRKLICH BEENDEN ?? (J/N)"
710 GETEI$:IFEI$="N"THEN500
720 IFEI$<>"J"THEN710
730 PRINT"[147] TSCHUESS !!":END
797 REM--------------------------------
798 REM BILD ANZEIGEN
799 REM--------------------------------
800 IFM=0THENSYSHC,F1,F2:GOTO820
810 SYSMC,F3,F4,F5,F6
820 SYSHN,M:GETEI$:IFEI$=""THEN820
830 IFEI$<>"C"THENSYSHF:GOTO500
840 SYSCL:GOTO820
897 REM--------------------------------
898 REM DIRECTORY ANZEIGEN
899 REM--------------------------------
900 PRINT"[147]":SYSDI
910 OPEN15,8,15:INPUT#15,A1$,A2$,A3$,A4$
920 CLOSE15:PRINT:PRINT""A1$" "A2$" "A3$" "A4$
930 POKE198,0:WAIT198,1
940 GOTO500
997 REM--------------------------------
998 REM NEUES BILD
999 REM--------------------------------
1000 PRINT"[147] NEUES BILD BERECHNEN"
1010 PRINT" ===================="
1020 PRINT" HIRES- ODER MULTICOLOUR-BILD ? (H/M)"
1030 GETEI$:IFEI$="M"THENM=1:GOTO1060
1040 IFEI$<>"H"THEN1030
1050 M=0
1060 PRINT" BITTE FORMEL FUER X EINGEBEN:"
1070 INPUT" --> XX=";X$
1080 PRINT" BITTE FORMEL FUER Y EINGEBEN:"
1090 INPUT" --> YY=";Y$
1100 IFM=0THEN1130
1110 PRINT" NACH WIEVIEL SCHRITTEN SOLL DIE FARBE GEWECHSELT WERDEN ?"
1120 PRINT" --> ";:AU=1:ZM=7:GOSUB1800:SC=AU
1130 PRINT"[147] NEUES BILD BERECHNEN"
1140 PRINT" ===================="
1150 PRINT" VERSCHIEBUNG IN X-RICHTUNG ?"
1160 PRINT" --> ";:AU=0:ZM=5:GOSUB1800:VX=AU
1170 PRINT" VERSCHIEBUNG IN Y-RICHTUNG ?"
1180 PRINT" --> ";:AU=0:ZM=5:GOSUB1800:VY=AU
1190 PRINT" VERGROESSERUNG HORIZONTAL ?"
1200 PRINT" --> ";:AU=1:ZM=8:GOSUB1800:MX=AU
1210 PRINT" VERGROESSERUNG VERTIKAL ?"
1220 PRINT" --> ";:AU=1:ZM=8:GOSUB1800:MY=AU
1221 PRINT"[147] AUTOMATISCHES ABSPEICHERN ? (J/N)"
1222 GETEI$:IFEI$="N"THENIS=0:GOTO1227
1223 IFEI$<>"J"THEN1222
1224 PRINT" NACH WIEVIEL ITERATIONEN ?":PRINT" ---> ";
1225 AU=10000:ZM=12:GOSUB1800:IS=AU
1226 PRINT" NAME DES BILDES ?":INPUT" --->";N3$
1227 PRINT" NACH WIEVIEL ITERATIONEN ABRECHEN ?":PRINT" --> ";
1228 AU=10000:ZM=12:GOSUB1800:IB=AU
1230 PRINT" ALLES O.K. ?? (J/N)"
1240 GETEI$:IFEI$="N"THEN500
1250 IFEI$<>"J"THEN1240
1260 PRINT"[147] DAS BILD WIRD JETZT BERECHNET !!":BI=1
1270 FORI=0TO500:NEXT
1280 SYSFX,X$:SYSFY,Y$
1290 :
1300 SYSCL:IFM=0THENSYSHC,F1,F2:GOTO1320
1310 SYSMC,F3,F4,F5,F6
1320 SYSHN,M
1330 IT=0:X=0:Y=0:XX=0:YY=0:I1=0:LF=1:SI=0:AZ=0
1340 SX=VX/(M+1)+159-M*80:SY=VY+99:NX=MX/(M+1):NY=MY
1350 GOSUB30
1360 XX=FNX(X):YY=FNY(Y):X=XX:Y=YY
1370 ZX=X*NX+SX:ZY=Y*NY+SY
1380 IFZX<0ORZX>319-M*160ORZY<0ORZY>199THEN1410
1390 IFM=0THENSYSHP,ZX,ZY:GOTO1410
1400 SYSMP,LF,ZX,ZY
1410 IT=IT+1:I1=I1+1:IFI1=SCTHENI1=0:LF=LF+1
1420 IFLF=4THENLF=1
1425 SI=SI+1:IFSI=ISTHENSI=0:AZ=AZ+1:NA$=N3$+STR$(AZ):AT=1:GOTO2220
1427 IFIT=IBTHENSYSHF:GOTO500
1430 GETEI$:IFEI$=""THEN1360
1440 SYSHF:GOTO500
1497 REM-------------------------------
1498 REM WEITERRECHNEN
1499 REM-------------------------------
1500 PRINT"[147] ABBRECHEN NACH WIEVIEL ITERATIONEN ?":PRINT" ---> ";
1510 AU=IB:ZM=12:GOSUB1800:IB=AU
1520 IFM=0THENSYSHC,F1,F2:GOTO1540
1530 SYSMC,F3,F4,F5,F6
1540 SYSHN,M:GOTO1340
1597 REM-------------------------------
1598 REM PARAMETER ANZEIGEN
1599 REM-------------------------------
1600 PRINT"[147] ITERATIONEN:"IT
1610 PRINT" XX="X$:PRINT" YY="Y$
1620 PRINT" MODUS: ";:IFM=0THENPRINT"HIRES":GOTO1640
1630 PRINT"MULTICOLOUR"
1640 PRINT" X="X,"Y="Y
1650 PRINT" VERSCHIEBUNG : X="VX,"Y="VY
1660 PRINT" VERGROESSERUNG: X="MX,"Y="MY
1670 IFIS=0THEN1676
1672 PRINT" AUTOM. SPEICHERN NACH"IS"ITERATIONEN"
1675 PRINT" UNTER DEM NAMEN:";N3$
1676 PRINT" NACH"IB"ITERATIONEN WIRD ABGEBROCHEN"
1680 IFM=1THENGOSUB1700
1690 PRINT"[210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210][210]";
1692 PRINT" BITTE IRGENDEINE TASTE DRUECKEN";
1695 POKE198,0:WAIT198,1:GOTO500
1697 REM-------------------------------
1698 REM MULTICOLOUR-PARAMETER
1699 REM-------------------------------
1700 PRINT" FARBWECHSEL NACH"SC"ITERATIONEN"
1710 PRINT" AKTUELLE FARBE :"LF
1790 RETURN
1797 REM-------------------------------
1798 REM EINGABE-ROUTINE (ZAHLEN)
1799 REM-------------------------------
1800 ZL=0:AU$="":POKE204,0
1810 GETEI$:IFEI$=""THEN1810
1820 EI=ASC(EI$)
1830 IFZL<ZMANDEI>44ANDEI<58ANDEI<>47THENPRINTEI$;:ZL=ZL+1:AU$=AU$+EI$
1840 IFEI=20ANDZL>0THENPRINTEI$;:ZL=ZL-1:AU$=LEFT$(AU$,LEN(AU$)-1)
1850 IFEI<>13THEN1810
1860 IFZL>0THENAU=VAL(AU$)
1865 POKE204,1
1870 PE=1024+40*PEEK(214)+PEEK(211)
1880 IFPEEK(PE)>127THENPOKEPE,PEEK(PE)-128
1890 PRINT:RETURN
1897 REM-------------------------------
1898 REM FARBEN ANZEIGEN & AENDERN
1899 REM-------------------------------
1900 PRINT"[147] HIRESFARBEN:":PRINT" [163][163][163][163][163][163][163][163][163][163][163][163]"
1910 PRINT" HINTERGRUNDFARBE :";F2
1920 PRINT" VORDERGRUNDFARBE :";F1
1930 PRINT" MULTICOLOURFARBEN:":PRINT" [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
1940 PRINT" HINTERGRUNDFARBE :";F3
1950 PRINT" FARBE 1 :";F4
1960 PRINT" FARBE 2 :";F5
1970 PRINT" FARBE 3 :";F6
1980 PRINT" (1) ........HIRESFARBEN AENDERN"
1990 PRINT" (2) ..MULTICOLOURFARBEN AENDERN"
2000 PRINT" (3) ..........ZURUECK ZUM MENUE"
2010 GETEI$:IFEI$=""THEN2010
2020 EI=VAL(EI$):ONEIGOTO2040,2070,500
2030 GOTO2010
2040 PRINT"[147] VORDERGRUNDFARBE :";:AU=F2:ZM=2:GOSUB1800:F2=AU
2050 PRINT" HINTERGRUNDFARBE :";:AU=F1:ZM=2:GOSUB1800:F1=AU
2060 GOTO1900
2070 PRINT"[147] HINTERGRUNDFARBE :";:AU=F3:ZM=2:GOSUB1800:F3=AU
2080 PRINT" FARBE 1 :";:AU=F4:ZM=2:GOSUB1800:F4=AU
2090 PRINT" FARBE 2 :";:AU=F5:ZM=2:GOSUB1800:F5=AU
2100 PRINT" FARBE 3 :";:AU=F6:ZM=2:GOSUB1800:F6=AU
2110 GOTO1900
2197 REM-------------------------------
2198 REM BILD ABSPEICHERN
2199 REM-------------------------------
2200 PRINT"[147] WIE SOLL DAS BILD HEISSEN ?"
2210 INPUT" -->";NA$:AT=0
2220 N1$="HP."+NA$:N2$="HD."+NA$+",S,W"
2230 SYSHS,N1$,8
2240 OPEN2,8,2,N2$
2250 PRINT#2,X$:PRINT#2,Y$:PRINT#2,N3$
2260 PRINT#2,M;R$;IT;R$;I1;R$;LF;R$;X;R$;Y;R$;VX;R$;VY;R$;MX;R$;MY;R$;SC;R$;
2265 PRINT#2,SI;R$;IS;R$;AZ;R$;IB;R$
2270 CLOSE2
2280 IFAT=0THENGO